package com.wmx.hb.mapper;

import org.apache.ibatis.annotations.Param;

/**
 * 数据库初始化方法映射
 *
 * @author wangMaoXiong
 * @version 1.0
 * @date 2023/4/8 9:18
 */
public interface DatabaseInitMapper {

    /**
     * 表是否存在
     *
     * @param tableName ：表名，不区分大小写
     * @return ：存在时返回值大于0
     */
    int existTable(@Param("tableName") String tableName);

    /**
     * drop 删除表
     *
     * @param tableName ：表名，不区分大小写
     */
    void dropTable(@Param("tableName") String tableName);

    /**
     * create 创建新人员信息表(person)
     *
     * @param tableName ：表名，不区分大小写
     */
    void createTableForPerson(@Param("tableName") String tableName);

    /**
     * 初始化数据：批量插入（效率会显著高于逐个插入，oracle 与 Mysql 都通用
     *
     * @param tableName
     * @return
     */
    int insertPersons(@Param("tableName") String tableName);

}
